class MEMBER{ETP,ATP<$CONTAINER{ETP}}
****
Various membership functions on containers


Ancestors
COMPARE{_}



Public


Features
count(a: ATP,v:ETP):INT
**** The number of elements that are `elt_eq' to `v'. Self may be void.
count_if(a: ATP,test:ROUT{ETP}:BOOL):INT
**** The number of elements which satisfy `test'. Self may be void.
every(a: ATP,test:ROUT{ETP}:BOOL):BOOL
**** True if every element of self satisfies `test'. Self may be void.
find_if(a: ATP,test:ROUT{ETP}:BOOL):ETP
**** Use inout Return leftmost element of self which satisfies `test', or void if there is none. Self may be void.
notany(a: ATP,test:ROUT{ETP}:BOOL):BOOL
**** True if none of the elements of self satisfies `test'. Self may be void.
notevery(a: ATP,test:ROUT{ETP}:BOOL):BOOL
**** True if not every element of self satisfies `test'. Self may be void.
some(a: ATP,test:ROUT{ETP}:BOOL):BOOL
**** True if some element of self satisfies `test'. Self may be void.

Iters
filter!(once a: ATP,once f:ROUT{ETP}:BOOL): ETP
filter_not!(once a: ATP,once f:ROUT{ETP}:BOOL): ETP


Private

elt_eq(e1,e2:ETP):BOOL .. Included as elt_eq
**** The "less than" relation used in the sorting routines. Compares the object "id" by default. May be redefined in descendants.
elt_hash(e:ETP):INT .. Included as elt_hash
**** A hash value associated with an element. Must have the property that if "elt_eq(e1,e2)" then "elt_hash(e1)=elt_hash(e2)". Can be defined to always return 0, but many routines will then become quadratic. Uses object "id" by default. May be redefined in descendants.
elt_lt(e1,e2:ETP):BOOL .. Included as elt_lt
**** The "less than" relation used in the sorting routines. Compares the object "id" by default. May be redefined in descendants.
elt_nil: ETP .. Included as elt_nil
**** Return the nil value. If the element is under $NIL then return e.nil. Otherwise, return void
_
is_elt_nil(e:ETP):BOOL .. Included as is_elt_nil

The Sather Home Page